home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 1996 April
/
CHIP 1996 aprilis (CD06).zip
/
CHIP_CD06.ISO
/
hypertxt.arj
/
92
/
QCFORW.CD
< prev
next >
Wrap
Text File
|
1995-09-11
|
12KB
|
193 lines
@VCASE-es bárány@N
@VQuick C for Windows@N
A Microsoft a Visual Basic után piacra dobta második
olyan fejlesztôi rendszerét is, amely teljesen be van építve
a Windowsba. A Visual Basic-tôl eltérôen azonban ebben
teljesen hozzáférhetôk a Windows programozói felületei.
A Quick C jelentôsen megkönnyíti a Windows alatti
programozást. A párbeszéd-szerkesztônek (dialog editor), a
képszerkesztônek (image editor), és fôképp a Quick Case:W
programgenerátornak köszönhetôen a képernyôn interaktívan
elkészített felület automatikusan átalakítható C nyelvû
forráskódba. Åttekintjük, hogy milyen lehetôségeket nyújt a
Quick C for Windows, és vajon tökéletesen helyettesíti-e az
SDK-t (Windows Software Development Kit)?
A Windowsban programozók számára a C a legjobb nyelv.
Ennek okai kézenfekvôk: a C igen nagy teljesítményû, széles
körben elterjedt, és teljes hozzáférést nyújt a Windows
felülethez. Az is mellette szól, hogy a Microsoft
hozzáhangolta a C-hez az SDK-t. îgy a C-ben programozók
viszonylag könnyen szokhatnak hozzá a Windowsban való
programozáshoz.
Sajnos azonban kissé körülményes az SDK-val való
programozás. Szükség van egy külön szövegszerkesztôre a
forrásszöveg megírásához, a Microsoft C compiler csak DOS
alatt futtatható (legkorábban az év végére ígérik a Windows
alatt futó Microsoft C++ 7.0-t), és a Codeview debugger
használatához általában egy második monitor szükséges. Az
SDK eszközei sem éppen kényelmesek.
A Windows-programozás úttörô korszaka lassan, de
biztosan a végéhez közeledik, és a fejlesztôk igényei is
nônek. A konkurens Borland cég Windowshoz készült Turbo
Pascalja bebizonyította, hogy egy könnyen kezelhetô,
kényelmes fejlesztôi rendszer és egy nagyteljesítményû
programozási nyelv nem feltétlenül mondanak ellent
egymásnak. A Microsoftnak tehát ki kellett találnia valamit.
A válasz a Quick C for Windows, röviden QCWIN. A C-ben
programozók számára ez kényelmes alternatíva az SDK helyett.
A QCWIN fejlesztôi környezete (lásd a képen) teljesen be
van építve a Windowsba, a programozónak tehát egy pillanatra
sem kell kilépnie a Windowsból. A hibakeresés is a Windows
alatt végezhetô. Az eddig Codeviewt és két monitort használó
programozók számára ez szokatlan kényelmet jelent. Nagyobb
programok hibakeresésére most is jobb a Codeview és a két
monitor, de kisebb programokhoz nagyon praktikus a beépített
debugger. A fejlesztôi környezet nagyon hasonló DOS-beli
párjához, de vannak eltérések. Például a ""toolbar" (lásd a
képen), amely egy sor ikonból áll. Az ikonok használatával
le lehet fordítani egy programot, át lehet alakítani .EXE
file-lá és lépésenként le lehet futtatni. Definiálhatunk egy
munkaterületet (workspace) is, amelyen többek között
tárolhatjuk az összes nyitott ablak elrendezését.
De van sok közös tulajdonság is. A QCWIN-nel való
programozásban is a projektfile (.MAK kiterjesztéssel)
jelenti az alapot. Ebben a file-ban van megadva a
projektbeli összes file, s az, hogy az egyes file-okat
miképp kell lefordítani. Ha kész a projektfile, akkor a
program a @KBuild@N paranccsal átalakítható .EXE file-lá. A
fordítás ugyan nem olyan gyors, mint DOS alatt, de nem
egyértelmû a lassulás oka. Egy QCWIN-program tipikus
fejlesztési ciklusát mutatja be az ábra. E ciklusban fontos
szerepet játszik a Quick Case:W program, amelyrôl majd még
beszélünk. Az elkészült program szokás szerint az [F5]
billentyûvel indítható, de -- ha úgy tetszik -- a beépített
debuggerrel is lefuttatható. A legfontosabb
Windows-funkciókat szinte ""élôben" láthatjuk, ami a kezdôk
számára további segítség a tanulásban. îgy például érthetôvé
válik, hogy egy ablakot ténylegesen csak a ""Showwindow"
funkcióval lehet megnyitni -- a ""Createwindow"-val még nem
nyílik meg.
Külön dicséretet érdemel a részletes online segédlet.
Bár nem annyira átfogó, mint az SDK online kézikönyve, de
jobban áttekinthetô. Minden Windows-funkcióról, minden
adattípusról részletes leírást ad. E segédlet és a Quick
Case:W által a forrásszövegbe írt megjegyzések segítségével
a tapasztalt C-programozók minden utánaolvasás nélkül
megkezdhetik a Windowsban való programozást.
Az apróbb dolgokban is észrevehetôk a Windows alatti
közvetlen fejlesztés elônyei. A forrásszöveg színeit a
programelemektôl függôvé lehet tenni az @KOptions@N menü @KColors@N
parancsával. îgy elegánsan ki lehet emelni a megjegyzéseket,
az elágazásokat, a ciklusokat és a zárójelezések különbözô
szintjeit. A betûk típusa is kiválasztható a Windows alatt
használható betûtípusokból. A compiler láthatóan semmit nem
változott (béta verziót teszteltünk, tehát lehet, hogy
lesznek kisebb módosítások a compileren). Lényegében azonos
a Quick C 2.5 verziójával, amit jelez a compiler
meghívásakor megjelenô copyright is. Csak a compiler
memóriakezelése javult egy kicsit. A DOS alatti Quick C-ben
gyakran megakadt a fordítás @KOut of far heap space@N
hibaüzenettel, mivel egy egymenetes fordítóprogram elég nagy
memóriaigényû.
A Windows alatti klasszikus programozás egyik különösen
idôigényes eljárása az erôforrások elkészítése. Az
""erôforrások" olyan bittérképek, menük, párbeszéddobozok és
karakterláncok, amelyekbôl a Windows-programok felépítik a
képernyôiket. A QCWIN-t egy párbeszéd- és egy képszerkesztô
támogatja, amelyekkel megtervezhetôk a párbeszéddobozok és a
bittérképek (például az ikonok és a kurzor-formák
bittérképei). Aki már játszott egy kicsit a Visual
Basic-kel, az gyorsan ki fog igazodni a
párbeszéd-szerkesztôben (lásd a képen). A szerszámdoboz
(toolbox) egyik elemét kiválasztva az átkerül a
munkafelületre. A Visual Basic-tôl eltérôen itt minden
elemhez hozzárendelhetünk egy ID-értéket, amely késôbb az
elem azonosítására használható a Windows-programban. A
párbeszéd-szerkesztô elôállít egy .DLG kiterjesztésû file-t,
amit az erôforrás-compiler késôbb beépít az .EXE file-ba. De
sokkal praktikusabb e feladatot átadni egy másik programnak
-- a Quick Case:W-nek.
A QCWIN-ben ugyanis a felület kialakítása átruházható
egy segédprogramra, amelynek lehetôségei lehet, hogy sok
felhasználó számára varázslatnak tûnnek. A Quick Case:W-rôl
(röviden QC:W), egy olyan fejlesztési eszközrôl van szó,
amelynek licencét a Caseworks cégtôl vették meg. A CASE
rövidítés jelentése Computer Aided Software Engineering --
számítógéppel segített programozás. Jóllehet általában
másmilyent értünk CASE-eszköz alatt, mint amilyen a QC:W, de
az elnevezés találóan jelöli a jelentôségét, hiszen a QC:W
képes arra, hogy a képernyôn elkészített felületet
futtatható C-programmá alakítsa. Lenyûgözô megfigyelni, hogy
a @KGenerate@N parancsra hogyan készül el a C-forrásszöveg.
Kívánságra a forrásszöveg részletes megjegyzésekkel készül
el.
A QC:W kezelése játszi könnyedséggel megtanulható, amit
segít a jól szerkesztett online segédlet. A QC:W
elindításakor egy üres ablakot kapunk, amely megfelel a
késôbbi alkalmazás-ablaknak (lásd a képen). Elôször az ablak
külsô formáját kell úgy meghatározni, ahogy azt a
felhasználónak majd látnia kell. A következô lépésben a
menüléc készül el -- amennyiben a programhoz kell menü. A
menü minden pontja összekapcsolható egy párbeszéddobozzal,
amit szintén a párbeszéd-szerkesztôvel lehet megtervezni. E
párbeszéddobozokon kívül, amelyek egy menüparanccsal
hívhatók elô, a felhasználó természetesen a program futása
alatt is elôhívhat párbeszéddobozokat. Ezeket az ""unlinked"
párbeszéddobozokat ugyan a párbeszéd-szerkesztô elkészíti,
de az elôhívásukhoz szükséges kódot a programozónak kell
beillesztenie. Mint az ábra mutatja, a QC:W elôállít minden
olyan file-t, amely az .EXE file elkészítéséhez szükséges --
így a projekt-file-t is.
A QC:W persze nem tudja megírni egy Windows-program
teljes forrásszövegét. Csak az alapvázat készíti el, amit a
programozónak bôvítenie kell. A szükséges bôvítések közé
tartoznak elsôsorban az esemény-folyamatok, amelyeknek
például reagálniuk kell egy menüpont kiválasztására vagy egy
párbeszéddobozban bevitt adatokra. Itt is segít a QC:W. A
forrásszövegben egy megjegyzés minden olyan helyre felhívja
a fejlesztô figyelmét, ahol be kell illesztenie a megfelelô
kódot.
A QCWIN egyik magja a Quickwin könyvtár. A QCWIN ugyanis
négy különbözô programtípust tud készíteni: Windows EXE,
Windows DLL, DOS EXE és Quickwin EXE file-okat. Az utóbbiak
talán még a tapasztalt SDK-programozóknak is újak. A
Quickwin programok csak Windows alatt futnak, de mindössze
egyetlen ablakot használnak, és az input-outputhoz
felhasználhatják a DOS alatti függvényeket, például a
@Kprintf()@N-et és a @Kscanf()@N-et. A Quickwin programoknak az az
elônye, hogy a meglévô C programokat nem kell átírni a
Windows alá, legalábbis felületesen egy Windows program
érzetét (look and feel) keltik. A QCWIN természetesen DOS
programokat is képes készíteni. Ezek a Windows programoktól
elsôsorban .EXE formátumukban különböznek, amely a Windows
.EXE formátumának részhalmaza.
A QCWIN komplett fejlesztôi rendszer a Windowshoz, s
teljesen be van ágyazva a grafikus kezelési felületbe.
Minden lépést végrehajthatunk a fejlesztôi környezeten
belül, a forrásszöveg bevitelétôl a kész program hibáinak
kereséséig. A kezelési felületek elkészítését segédprogramok
támogatják, egy párbeszédszerkesztô, egy képszerkesztô és a
QC:W. A QC:W automatikusan megírja a képernyôn interaktívan
összeállított felület C forráskódját. A részletes online
segédletben nemcsak a fejlesztôi környezet van leírva, hanem
a Windows minden ismert funkciója is.
A Quick C for Windows tökéletesen helyettesíti a
Microsoft C compiler-bôl és az SDK-ból álló párost. Az
SDK-ban van néhány eszköz -- például a Spy, a Heapwalker és
a Shaker programok -- amelyek hiányoznak a QCWIN-bôl. Ezek
szerencsére nélkülözhetôk, másrészt belátható idôn belül az
SDK-tól független, önálló csomagokként fognak megjelenni a
piacon. A Quick C compilernek ugyan van néhány hiányossága a
Microsoft C 6.0ax compilerhez képest -- például a hiányzó
optimalizálási lehetôségek --, de ezekrôl is lemondhatnak a
Windows fejlesztôk, súlyosabb hátrányok nélkül.
A Quick C for Windows minden kényelme ellenére sem
szabad elfelejteni, hogy tiszta C programozásról van szó. A
QCWIN ezért éppoly kevéssé alkalmas a kezdô programozók
számára, mint a ""nagy" Microsoft C 6.0 compiler és az SDK
kettôse.
@KKarl Klein@N